package com.xidian.zhiancloud.controller.equipFacility.eqFacMng;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.xidian.zhiancloud.controller.base.BaseController;
import com.xidian.zhiancloud.dao.OhStandardMapper;
import com.xidian.zhiancloud.dto.ResultDTO;
import com.xidian.zhiancloud.enums.GeneralResponseEnums;
import com.xidian.zhiancloud.model.DefendStandard;
import com.xidian.zhiancloud.model.OhStandard;
import com.xidian.zhiancloud.model.OhType;
import com.xidian.zhiancloud.qo.equipFacility.OhStandardQO;
import com.xidian.zhiancloud.qo.equipFacility.OhTypeQO;
import com.xidian.zhiancloud.service.equipFacility.OhStandardService;
import com.xidian.zhiancloud.vo.equipFacility.OhTypeVO;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.Arrays;
import java.util.Date;
import java.util.LinkedList;
import java.util.List;

/**
 * 检修标准
 */
@RestController
@RequestMapping("/OhStandard")
public class OhStandardController extends BaseController {
    @Autowired
    private OhStandardService ohStandardService;

    /**
     * 批量增加检修标准
     *
     * @param ids        设备设施的ids
     * @param ohStandard 检修标准
     * @return
     */
    @PostMapping("/add")
    public ResultDTO<Boolean> add(Long[] ids, OhStandard ohStandard) {
        List<OhStandard> list = new LinkedList<>();
        for (Long id : ids) {
            OhStandard tmp = new OhStandard();
            BeanUtils.copyProperties(ohStandard, tmp);
            tmp.setEqFacId(id);
            list.add(tmp);
        }
        return ResultDTO.successOf(ohStandardService.saveBatch(list), GeneralResponseEnums.SUCCESS);
    }

//    /**
//     * 增加检修标准
//     *
//     * @param ohStandard 检修标准对象
//     * @return 是否添加成功
//     */
//    @PostMapping("/add")
//    public ResultDTO<Boolean> add(OhStandard ohStandard) {
//        Boolean result = ohStandardService.save(ohStandard);
//        return ResultDTO.successOf(result, GeneralResponseEnums.SUCCESS);
//    }
//
//    /**
//     * 根据id获取检修标准
//     *
//     * @param id 检修标准id
//     * @return 检修标准对象
//     */
//    @GetMapping("/getById")
//    public ResultDTO<OhStandard> getById(@RequestParam("id") Long id) {
//        return ResultDTO.successOf(ohStandardService.getById(id), GeneralResponseEnums.SUCCESS);
//    }
//
//    /**
//     * 根据id删除检修类型设置
//     *
//     * @param ids ids数组
//     * @return 返回删除标志
//     */
//    @PostMapping("/deleteByIds")
//    public ResultDTO<Boolean> deleteByIds(Long[] ids) {
//        Boolean result = ohStandardService.removeByIds(Arrays.asList(ids));
//        return ResultDTO.successOf(result, GeneralResponseEnums.SUCCESS);
//    }
//
//    /**
//     * 根据id修改检修类型设置
//     *
//     * @param ohStandard 检修类型设置对象
//     * @return 返回修改状态
//     */
//    @PostMapping("/patchById")
//    public ResultDTO<Boolean> patchById(OhStandard ohStandard) {
//        Boolean result = ohStandardService.updateById(ohStandard);
//        return ResultDTO.successOf(result, GeneralResponseEnums.SUCCESS);
//    }
//
//    /**
//     *
//     * @param ohStandardQO
//     * @return 分页列表
//     */
//    @GetMapping("/getListByQO")
//    public ResultDTO<IPage<OhStandard>> getList(OhStandardQO ohStandardQO) {
//        if (ohStandardQO.getCurrent()== null || ohStandardQO.getSize() == null) {
//            return ResultDTO.errorOf(GeneralResponseEnums.REQUEST_ERROR);
//        }
//        return ResultDTO.successOf(ohStandardService.selectByQO(ohStandardQO), GeneralResponseEnums.SUCCESS);
//    }
}
